package com.lynx.service;

import com.lynx.controller.model.User;
import com.lynx.service.exception.UserException;

/**
 * @author chris.liu
 * @version 4/17/14 11:04 PM
 */
public interface AccountService {

	/**
	 * 根据用户Id获取用户信息
	 * 
	 * @param id
	 * @return
	 * @throws UserException
	 */
	User getUserInfo(int id) throws UserException;

	/**
	 * 用户登录
	 * 
	 * @param id
	 *            用户身份标示，可以是邮箱、用户名或系统ID
	 * @param pwd
	 *            加密后的密码
	 * @return
	 */
	User login(String id, String pwd) throws UserException;

	/**
	 * 用户注销登录
	 * 
	 * @return
	 */
	boolean logout() throws UserException;

	User updateUserInfo(User user) throws UserException;

}
